| автор перевода - Штрек - flash-club.ru | Предыдущая | Следующая | Оглавление |
Flash Player 5.
expression1>>>expression2
expression1 Число, или выражение, которое нужно
сместить вправо.
expression2 Число, или выражение, конвертируемое
в целое число от 0 до 31.
32-битное целое число.
Оператор (побитовый); ничем не отличается от побитового оператора смещения
вправо (>>) кроме знака изначального выражения expression
, так как биты слева всегда заполняются нулями.
Числа с плавающей точкой конвертируются в целые путём отбрасывания значащих цифр справа от точки. Положительные целые числа конвертируются в 16-битное беззнаковое целое число, с максимальным значением 4294967295 или 0xFFFFFFFF; значения большие, чем максимум, отбрасывают лишние значащие цифры до конвертации. Отрицательные целые числа конвертируются в 16-битное беззнаковое целое число, с минимальным значением -2147483648 или 0x800000000; числа имеющие значение меньшие, чем минимум, отбрасывают лишние значащие цифры до конвертации.
Для дополнительной информации, смотрите "Старшинство и ассоциативность операторов" в Использовании ActionScript во Флэш .
Следующий пример показывает процесс преобразования числа -1 в 32-битное целое число и смещение этого числа на один бит вправо :
var x:Number = -1 >>> 1;trace(x); // выводится: 2147483647
Результат таков потому, что десятичное число -1 равно двоичному числу 11111111111111111111111111111111 (тридцать две единицы), Смещение вправо на один бит без знака заставляет игнорировать наименее значимый бит (самый правый), и заполнить нулём наиболее значимый бит (самый левый). Результатом будет двоичное число 01111111111111111111111111111111, которое представляет собой 32-битное целое число 2147483647.
>>= (побитовое смещение вправо
и присвоение)
| Посмотреть комментарии LiveDocs | Предыдущая | Следующая | Оглавление | |